<?php
namespace  app\home\controller;
use houdun\core\Controller;
use system\model\Grade;
use system\model\Student as Stu;

class Student extends Controller {
    /**
     *  学生表首页
     * @return mixed
     */
     public  function  index(){
          //获取所有数据 为显示在页面
          $data= Stu::getAll();
          //加载模版页面并分配页面到使用
          //必须使用return 确保 to_string能生效
          return view('',compact('data'));
     }

    /**
     *  数据表的添加方法
     * @return mixed
     */
     public function  add(){
           //获取班级表的所有数据
           //为下拉框列表显示班级姓名
          $gradeClass=Grade::getAll();
          //是否提交数据
       if(IS_POST){
           //提交插入一条数据到数据库
           Stu::insert($_POST);
           //提示成功消息跳转页面
           $this->setRedirect('?c=student&a=index')->message('添加成功');
         }
         //加载模版
      return view('',compact('gradeClass'));
     }

    /**
     *  学生表修改方法
     * @return mixed
     */
     public function edit(){
          // 获取ID 学生表的一条旧数据
          $oldData=Stu::find($_GET['id']);
          // 获取ID 班级的一条数据 为了显示班级名称
          $grade=Grade::find($oldData['grade_id']);
          //获取班级表了所有数据 为了班级下拉框的显示和编辑好的提交
          $gradeAll=Grade::getAll();
          //是否进行了修改提交
          if(IS_POST){
              //修改学生表中的对应的信息
               Stu::where('id='.$_GET['id'])->update($_POST);
               //修改完成跳转页面提示成功信息
               $this->setRedirect('?c=student&a=index')->message('修改成功');
          }
          //加载编辑模版
           return view('',compact('oldData','grade','gradeAll'));
     }

    /**
     * 学生表删除方法
     */
     public function  del(){
          //删除学生表的一条数据
          Stu::where("id=".$_GET['id'])->delete();
          //跳转页面 提示消息
          $this->setRedirect('?c=student&a=index')->message('删除成功');
     }
}